package script
{
	/**
	 * 语法树节点类型
	 * @author blank
	 * 
	 */
	public class GNodeType
	{
		/**
		 * 类
		 */
		public static var CLASS:int=20;
		
		/**
		 * 函数声明
		 */
		public static var FunDecl:int=0;
		
		/**
		 * 变量声明
		 */
		public static var VarDecl:int=1;
		
		/**
		 * 参数
		 */
		public static var Params:int=2;
		
		/**
		 * 数学运算
		 */
		public static var MOP:int=3;
			
		/**
		 * 逻辑运算
		 */
		public static var LOP:int=4;
		
		/**
		 * 单元逻辑运算
		 */
		public static var LOPNot:int=22;
		
		/**
		 * 单元逻辑非节点
		 */
		public static var Nagtive:int=23;
		
		/**
		 * 比较运算
		 */
		public static var COP:int=5;
		
		/**
		 * 语句
		 */
		public static var Stms:int=6;
		
		/**
		 * 赋值语句
		 */
		public static var AssignStm:int=7;
		
		/**
		 * if else 语句
		 */
		public static var IfElseStm:int=8;
		
		/**
		 * while 语句
		 */
		public static var WhileStm:int=9;
		
		/**
		 * for 语句
		 */
		public static var ForStm:int=10;
		
		/**
		 * for in 语句
		 */
		public static var ForInStm:int=25;
		
		/**
		 * for each 语句
		 */
		public static var ForEACHStm:int=40;
		
		/**
		 * return 语句
		 */
		public static var ReturnStm:int=11;
		
		/**
		 * 函数调用语句
		 */
		public static var FunCall:int=12;
		
		//
		public static var VarID:int=13;//值类型
		public static var IDENT:int=24;//值类型
		//2011.9.6增加
		public static var Index:int=28;//[]下标语句
		public static var SWITCH:int=29;//[]下标语句
		public static var CASE:int=30;//[]下标语句
		public static var DEFAULT:int=31;//[]下标语句
		public static var TRY:int=32;//try语句
		public static var CATCH:int=33;//try语句
		public static var FINALLY:int=34;//try语句
		
		public static var BREAK:int=35;//break语句
		public static var CONTINUE:int=36;//continue语句
		
		/**
		 * else if 语句
		 */
		public static var ELSEIF:int=37;
		public static var PREINCREMENT:int=38;//++idient语句
		public static var INCREMENT:int=39;//idient++ --语句
		
		//
		public static var newArray:int=26;//值类型
		public static var newObject:int=27;//值类型
		//
		public static var ConstID:int=14;//值类型
		public static var EXPS:int=15;
		public static var newClass:int=17;//值类型
		public static var ERROR:int=18;
		public static var importStm:int=19;//语句
		
		public function GNodeType(){}
	}
}